package cn.school.course.service;

import cn.school.course.entity.Course;
import cn.school.course.entity.CourseSessions;
import cn.school.course.vo.WeekCourseTableBySchoolClassReqVo;
import cn.school.course.vo.WeekCourseTableBySchoolClassRspVo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * @className: 课程Service
 * @author: fangjin.tao
 * @date: 2023/1/4
 **/
public interface CourseService extends IService<Course> {
	WeekCourseTableBySchoolClassRspVo getClassCourseTable(List<CourseSessions> courseSessionsList, WeekCourseTableBySchoolClassReqVo reqVo);
	
	IPage<Course> pageByCourseList(IPage<Course> page, QueryWrapper<Course> courseReqVo);
	
	/**
	 * 创建课程或者是调课
	 *
	 * @throws
	 * @author fangjin.tao
	 * @param: course
	 * @updateTime 2023/2/11 10:14
	 */
	void saveOrUpdateMyDefined(Course course);
	
	/**
	 * 创建课程或者
	 *
	 * @throws
	 * @author fangjin.tao
	 * @updateTime 2023/2/11 10:13
	 */
	void deleteCourse(Long courId);
}
